package com.blz.bugs.common.trans;

import org.springframework.core.Ordered;

/**
 * <p>
 * 消息格式转换接口，可自定义实体对象转换成目标对象，同时支持对象转换成实体对象
 * </P>
 * 
 * @Title: ITransformation.java
 * @Package com.blz.bugs.common.trans
 * @author bruce
 * @version V1.0
 * @since JDK 1.6.0.25
 * @create 2015-1-28 下午3:52:53 company www.blz.com
 */
public interface ITransformation extends Ordered {
	
	/**
	 * <p>
	 * 根据传入的原消息对象，转换成未格式化的字符串
	 * </p>
	 * 
	 * @author :bruce
	 * @param source
	 * @return String
	 * @create 2015-1-28下午3:57:30
	 */
	String convert(Object source);

	/**
	 * <p>
	 * 根据提供的消息信息和返回对象，转化成指定的对象进行返回
	 * </p>
	 * 
	 * @author bruce
	 * @param source
	 * @param cls
	 * @return T -->cls
	 * @create 2015-1-28下午3:55:34
	 */
	<T> T convert(String source, Class<T> cls);
	
}
